package org.jeecg.modules.tencent_esign.tencent_upload.service;

import com.alibaba.fastjson.JSONObject;
import org.jeecg.common.api.vo.Result;
import org.springframework.web.multipart.MultipartFile;

/**
 * @Description: 腾讯电子签文件上传服务接口
 * @Author: jeecg-boot
 * @Date: 2025-06-28
 * @Version: V1.0
 */
public interface ITencentUploadService {

    /**
     * 上传文件到腾讯电子签平台（完整参数版本）
     *
     * @param file 文件
     * @param fileType 文件类型（用于内部处理，如PDF、WORD等）
     * @param fileName 文件名
     * @param businessType 业务类型 (TEMPLATE: 模板, DOCUMENT: 文档, SEAL: 印章)
     * @param agent 代理信息
     * @return
     */
    Result<?> uploadFile(MultipartFile file, String fileType, String fileName, String businessType, JSONObject agent);
    
    /**
     * 上传文件到腾讯电子签平台（简化版本）
     *
     * @param file 文件
     * @param fileType 文件类型
     * @param fileName 文件名
     * @return
     */
    Result<?> uploadFile(MultipartFile file, String fileType, String fileName);
}